#include <stdio.h>
#include <pthread.h>
#include <unistd.h>

// 编译链接外部库 -lpthread

void *start_routine(void *arg)
{
    printf("子线程 %d\n", *((int *)arg));
    // while (1)
    // {
    //     printf("hello %d\n", *((int *)arg));
    //     sleep(1);
    // }
}

int main(void)
{

    int count = 1;
    printf("main 单个进程 的主线程\n");

    while (1)
    {
        // 创建一个线程
        pthread_t thread;
        int res = pthread_create(&thread, NULL, start_routine, &count);
        printf("count = %d res = %d\n", count, res);
        count++;
        // sleep(1);

        if (res != 0)
        {
            printf("创建线程失败\n");
            break;
            // return -1;
        }
    }
    pause(); // 阻塞主线程
}